--
-- DESCRIPTION
--
-- @COMPANY **
-- @AUTHOR **
-- @DATE ${date} ${time}
--

---@type BP_MyActor_C
local M = UnLua.Class()

-- function M:Initialize(Initializer)
-- end

-- function M:UserConstructionScript()
-- end

function M:ReceiveBeginPlay()
  print('BP_MyActor: ReceiveBeginPlay')
  -- self:SetHealth(UE4.UMyBlueprintFunctionLibrary.GetMaxHealth())
end

function M:ReceiveEndPlay()
  print('BP_MyActor: ReceiveEndPlay', self:GetHealth())
end

-- 覆写BlueprintImplementableEvent, 这里不需要_Implementation后缀
function M:OnSpecialNameChanged(NewName)
  if (not NewName or NewName == "") then
    self.SpecialName = "LuaSpecialName"
  else
    self.SpecialName = NewName
  end
end

-- 覆写BlueprintNativeEvent, 这里也不需要_Implementation后缀
function M:OnSpecialNameChangedNative(NewName)
  self:CustomEvent_0(NewName)
  self.SpecialName = "LuaSpecialNameNative"
  self:OnSpecialNameChanged(self.SpecialName..'____Native')
end

-- 覆写 CustomEvent_0
function M:CustomEvent_0(NewName)
  print('LUA CustomEvent_0 called with NewName:', NewName)
end

-- function M:ReceiveTick(DeltaSeconds)
-- end

-- function M:ReceiveAnyDamage(Damage, DamageType, InstigatedBy, DamageCauser)
-- end

-- function M:ReceiveActorBeginOverlap(OtherActor)
-- end

-- function M:ReceiveActorEndOverlap(OtherActor)
-- end

return M
